package com.cyj.dream.admin.config;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.extra.mail.MailAccount;
import cn.hutool.extra.mail.MailUtil;
import lombok.extern.slf4j.Slf4j;

/**
 * @Description: 邮件配置
 * @BelongsProject: DreamChardonnay
 * @BelongsPackage: com.cyj.dream.admin.config
 * @Author: ChenYongJia
 * @CreateTime: 2021-10-25 09:50
 * @Email: chen87647213@163.com
 * @Version: 1.0
 */
@Slf4j
public class EmailConfig {

    /**
     * @param host     邮件服务器的SMTP地址，可选，默认为smtp.<发件人邮箱后缀>
     * @param port     邮件服务器的SMTP端口，可选，默认25
     * @param from     发件人（必须正确，否则发送失败）
     * @param userName 用户名，默认为发件人邮箱前缀
     * @param passWord 密码（注意，某些邮箱需要为SMTP服务单独设置授权码，详情查看相关帮助）
     * @return
     */
    public static MailAccount getMailAccount(String host, Integer port, String from, String userName, String passWord) {
        MailAccount account = new MailAccount();
        account.setHost(host);
        account.setPort(port);
        account.setAuth(true);
        account.setFrom(from);
        account.setUser(userName);
        account.setPass(passWord);
        return account;
    }

    public static void main(String[] args) {
        MailUtil.send(EmailConfig.getMailAccount("smtp.yeah.net",
                25,
                "hutool@yeah.net",
                "hutool",
                "q1w2e3"),
                // 收件人集合
                CollUtil.newArrayList("hutool@foxmail.com"),
                // 标题
                "测试",
                // 内容
                "邮件来自Hutool测试",
                // 是不是 html 格式邮件
                false);
    }

}
